﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace TMS.formularios
{
    public partial class UIaModulo : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                limpiarForm();
                loadAppList();
                loadDevList();
            }
        }
        public void limpiarForm()
        {
            txtTipo.Text = "";
            txtNombre.Text = "";
            txtDescripcion.Text = "";

        }
        public void loadAppList()
        {
            //Carga el DropDownList de Aplicaciones.
            ddlApli.Items.Clear(); // Borra el contenido de la lista de aplicaciones disponibles.
            ListItem unL = new ListItem("Elija una aplicacion...", "" + 0);
            ddlApli.Items.Add(unL);
            foreach (Aplicacion ap in Dios.getInstancia().listarApps())
            {
                ListItem l = new ListItem(ap.Nombre, "" + ap.Id);
                ddlApli.Items.Add(l);
            }
            ddlApli.SelectedIndex = 0;
        }
        public void loadDevList()
        {
            //Carga el DropDownList de Desarrolladores.
            ddlDev.Items.Clear(); // Borra el contenido de la lista de desarrolladores disponibles.
            ListItem unL = new ListItem("Elija un desarrollador...", "" + 0);
            ddlDev.Items.Add(unL);
            foreach (Developer dev in Dios.getInstancia().listarDevs())
            {
                ListItem l = new ListItem(dev.Nombre, "" + dev.NroUsuario);
                ddlDev.Items.Add(l);
            }
            ddlDev.SelectedIndex = 0;
        }
        protected void btnCrear_Click(object sender, EventArgs e)
        {
            if (ddlApli.SelectedIndex != 0 && ddlDev.SelectedIndex != 0)
            {
                if (!Dios.getInstancia().existeModulo(txtNombre.Text))
                {
                    string tipoMod = txtTipo.Text;
                    string nom = txtNombre.Text;
                    string desc = txtDescripcion.Text;
                    long devId = long.Parse(ddlDev.SelectedValue);
                    long apliId = long.Parse(ddlApli.SelectedValue);
                    Dios.getInstancia().regModulo(tipoMod, nom, desc, apliId, devId);
                    limpiarForm();
                }
                else
                {
                    lblAdvertencia.Text = "Ya existe un modulo con ese nombre registrado en el sistema...";
                }
            }
        }
    }
}